<?php

class Gebouwen extends Controller{
	
	function __construct(){
		parent::Controller();
		$this->load->model('login_model');
		$this->load->model('gebouw_model');
	}
	
	function index(){
		//Variabelen voor view
		$data['titel'] = "Gebouwen Overzicht";
		$data['error'] = '';
		$data['query'] = $this->gebouw_model->getAlleGebouwen();
		$data['bouwtijd'] = 61;
		
		//Gebruikersinfo
		$gebruiker['users_naam'] = $this->session->userdata('username');
		$user_id = $this->login_model->getUserID($gebruiker);
		$ingelogd = $this->login_model->is_ingelogd(); 
		
		if($ingelogd){
			
			//Alle gebouwen query in een lus zetten. 
			foreach($data['query']->result() as $row):
				
				//Standaard level voor elk gebouw op 0 zetten
				$data['gebouw_lvl'][$row->gebouwen_id] = 0;
				
			endforeach;
			
			//Alle levels die niet 0 zijn van de user uit de database halen
			$gebouwen_user	=	$this->gebouw_model->getGebouwenUser($user_id);
			
			//Levels query user in lus zetten
			foreach($gebouwen_user->result() as $row):
				
				//Alle gebouwen met een level de 0 aanpassen in het level
				$data['gebouw_lvl'][$row->gebouwen_lvl_gebouw_id] = $row->gebouwen_lvl_lvl;
				
			endforeach;			
		
			$this->load->view('gebouw_view',$data);
		}
		else{
			redirect('login');
		}
		
		
	}
	
	function bouw(){
		//Variabelen
		$data['error'] = "";
		$gebouw_id = $this->uri->segment(3);
		$gebruiker['users_naam'] = $this->session->userdata('username');
		$user_id = $this->login_model->getUserID($gebruiker);
		$ingelogd = $this->login_model->is_ingelogd(); 

		if($ingelogd){
				
				$userinfo	=	$this->login_model->getUserInfo($gebruiker);
				
				if($userinfo['users_land'] > $userinfo['users_landgebruikt']) {
				
					$bestaat = $this->gebouw_model->bestaatGebouw($gebouw_id);
					$bouwtijdextra = $this->gebouw_model->berekenBouwtijd($gebouw_id);
					$bouwtijd = 61 + $bouwtijdextra;
					
					//Gegevens voor wachtrij gebouwen
					$gebouw['gebouwen_wachttijd_gebouw_id'] = $gebouw_id;
					$gebouw['gebouwen_wachttijd_user_id'] = $user_id;
					$gebouw['gebouwen_wachttijd_bouw_tot'] = time() + $bouwtijd;
						
					//Kijk of het gebouw bestaat
					if($bestaat == 1){
						$gebruikerupdate['users_landgebruikt']	=	$userinfo['landgebruikt'] + 1;
						$this->gebouw_model->voegToeWachtrij($gebouw, $gebruiker, $gebruikerupdate);
					}
					else{
						$data['error'] = "Dit gebouw bestaat niet!";
					}
				
				} else {
					$data['error']	=	'U heeft niet genoeg land meer om een gebouw te bouwen';
				}
				
				$this->index();
				
		}
		else{
			redirect('login');
		}
		
	}
}


?>